package godzilla.ciudad;

public class Plano {

	private Superficie[][] matrizDeUbicaciones;
	private Nivel nivelAsociado;

	public Plano(int ancho, int alto , Nivel nivelAsociado) {
		
		this.nivelAsociado = nivelAsociado;
		
		this.matrizDeUbicaciones = new Superficie[ancho][alto];
		for (int i=0;i<ancho;i++){
			for(int j=0;j<alto;j++){
				matrizDeUbicaciones[i][j] = new Tierra();
			}
		}
		
	}

	public Superficie ubicacionEn(Punto coordenadas) {
		
		return matrizDeUbicaciones[coordenadas.coordenadaX()][coordenadas.coordenadaY()];
		
	}

	public Nivel nivelAsociado(){
		return this.nivelAsociado;
	}

	public boolean encontrarAguaEn(Punto coordenadas) {
		
		return this.matrizDeUbicaciones[coordenadas.coordenadaX()][coordenadas.coordenadaY()].hayAgua();
		
		
	}

	public void inundar(Punto coordenadas) {
		
		Superficie lugarAInundar = this.matrizDeUbicaciones[coordenadas.coordenadaX()][coordenadas.coordenadaY()];
		this.matrizDeUbicaciones[coordenadas.coordenadaX()][coordenadas.coordenadaY()] = lugarAInundar.inundar();
		
	}
	
}
